# @Time:2021/6/20 23:32
# @Author:5120195554王欣霏
# -*- coding = utf-8 -*-

import os
import pygame
from dialog import blit_text


class CuteDialog(object):
    def __init__(self):
        img_path = os.path.join('../resource', 'img', 'cute1', '0850-5637a867-00000.tga')  # 头像路径
        temp_header = pygame.image.load(img_path)  # 加载进来
        header_width = temp_header.get_width()  # 调整header的大小 //表示取整数 /表示保留小数
        header_height = temp_header.get_height()
        header = pygame.transform.scale(temp_header, (header_width, header_height))  # 重置大小

        dialog_path = os.path.join('../resource', 'img', 'dialog', 'dialog.png')  # 对话框路径
        temp_dialog = pygame.image.load(dialog_path)
        dialog_width = temp_dialog.get_width() // 2
        dialog_height = temp_dialog.get_height() // 2
        dialog = pygame.transform.scale(temp_dialog, (dialog_width, dialog_height))

        font_path = os.path.join('../resource', 'font', 'newfont.TTF')  # 字体路径
        font = pygame.font.Font(font_path, 18)  # 第二个参数是字体大小

        text = "你师傅受命护送 袈裟 去西天， 但袈裟现在被妖怪抢走了。 " \
               "你要想办法将它 夺回来。 速去速回。 按Y继续"
        blit_text(dialog, text, (20, 25), font)  # 第三个参数是偏移值 在dialog中偏移(20,25)

        # 要将对话框、头像都封装在一起 然后再放在surface上
        if header_height > dialog_height:
            height = header_height
        else:
            height = dialog_height
        width = header_width + dialog_width
        self.surface = pygame.Surface((width, height))  # 申请图层 默认得到的图层是黑色的
        self.surface.set_colorkey((0, 0, 0))  # 把黑色扣掉
        self.surface.blit(header, (0, 0))
        self.surface.blit(dialog, (header_width, 0))  # 和头像并排显示
